home *** CD-ROM | disk | FTP | other *** search
/ Collection of Tools & Utilities / Collection of Tools and Utilities.iso / c / jpl_c.zip / FLOOR.C < prev    next >
Text File  |  1986-05-18  |  896b  |  36 lines

  1. /* 1.0  04-27-84 */
  2. /************************************************************************
  3.  *            Robert C. Tausworthe                *
  4.  *            Jet Propulsion Laboratory            *
  5.  *            Pasadena, CA 91009        1984        *
  6.  ************************************************************************/
  7.     double
  8. floor(x)        /* return greatest integer less or equal to x    */
  9.  
  10. /*----------------------------------------------------------------------*/
  11. double x;
  12. {
  13.     double fint(), ceil();
  14.  
  15.     if (x < 0.0)
  16.         return -ceil(-x);
  17.     else    return (fint(x));
  18. }
  19.  
  20. /************************************************************************/
  21.     double
  22. ceil(x)            /* return least integer greater or equal to x    */
  23.  
  24. /*----------------------------------------------------------------------*/
  25. double x;
  26. {
  27.     double modf(), floor();
  28.     int i;
  29.  
  30.     if (x < 0.0)
  31.         return -floor(-x);
  32.     if (modf(x, &x) > 0.0)
  33.         ++x;
  34.     return x;
  35. }
  36.